![XplentyからBigQueryに接続設定を行ってみる](https://devio2023-media.developers.io/wp-content/uploads/2019/12/xplenty-logo-1200x630.jpg)
XplentyからBigQueryに接続設定を行ってみる
はじめに
データアナリティクス事業本部のkobayashiです。
最近パイプライン構築ツールXplentyを扱う機会に恵まれました。XplentyはETL、ELTツールとして様々なデータソースを扱え、また処理もXplentyのGUIで直感的に作成できます。これからXplentyを使って様々なデータソースに接続しジョブを作成して色々試してその内容を発信してみようと思います。
Xplenty | Simplified ETL & ELT to BigQuery, Snowflake, Redshift & Azure
まだ触り始めなので今回はなにか具体的なジョブを紹介というよりもまずはBigQueryへの接続方法をまとめたいと思います。
XplentyによるBigQueryへの接続方法
以下のXplentyのコミュニティに接続方法が記載されているので基本的にはこのドキュメントの通りに進めます。
Allowing Xplenty access to my Google BigQuery dataset – Xplenty Support & Help
設定手順
設定は以下の順序で行います。
- GCPのIAMと管理でXplenty用のメンバーを追加する。
- BigQueryのデータセット権限にて1で追加したメンバーに権限を付与する。
- Xplentyでconnectionを作成する。
すべてGUIで設定できますのでそれほど難しくなく設定できると思います。
GCPのIAMと管理でXplenty用のメンバー追加
GCPで接続したいプロジェクトのマネジメントコンソールにアクセスします。
- コンソールのサイドバーから
IAMと管理 > IAM
を選択する。 - 画面上部の
追加
を選択する。 - 「プロジェクトへのメンバー追加」モーダルが出るので新しいメンバーに
869780223921-fkm5hu2ev8la67tqrntm6b5tjm6c6sgl@developer.gserviceaccount.com
を入力し、権限にプロジェクト(閲覧者)
を設定する。このアドレスはこのアドレスはXplentyのGoogleCloudメールですので今回の設定で固有の値ではなく共通のアドレスになります。
BigQueryのデータセット権限を付与
次にXplentyで扱いたいBigQueryのデータセットにXplentyから接続できるように権限を付与します。
- マネジメントコンソールからBigQueryを選択する。
- 対象のデータセットを選択し、共有データセットを選択する。
- 「データセットの権限」モーダルが出るので、メンバーを追加で
869780223921-fkm5hu2ev8la67tqrntm6b5tjm6c6sgl@developer.gserviceaccount.com
を入力し、権限でBigQueryデータ編集者
を設定する。
これでGCP側の設定は終わりますので、次にXplentyを設定します。
Xplentyでconnectionの作成
XplentyのGUIでConnectionを作成します。
- Xplentyにログインして左のメニューよりConnectionsを選択する。
New connection
ボタンを押下するとXplentyで設定できるデータソースが出てくるのでBigQueryを選択する。- 設定値の入力フォームが出てくるので入力して保存する。
- Name : わかりやすい名前を入力
- Project ID : GCPのプロジェクトIDを入力
- Dataset ID : データセット名を入力
- Region : データセットのリージョンを選択
これでXplentyでBigQueryのデータセットに接続できるようになりましたので、実際にデータが利用できるところまでを確認してみます。
XplentyでBigQueryのデータの確認
XplentyのPackageでBigQueryコンポーネントを追加してデータテーブルの中身が利用できる所までを設定してみます。
- Packagesで
New package
を押下してPackageを作成する。 Add componet
を押下し、SourcesでBigQueryを選択する。- BigQueryコンポーネント作成用のモーダルが表示されるので、設定したBigQueryのconnectionを選択する。
ここから先、Source properties
でデータの取得方法が選択できるので今回は両方試してみます。
Tableアクセスモード
Source properties
でTable
を選択し、テーブル名を入力します。
テーブル名を入力しNext
を押下すると、読み込むカラムの選択とデータのプレビューが行なえBiqQueryのデータテーブルからデータが取れることが確認できます。
Queryアクセスモード
Source properties
でQuery
を選択し、クエリを入力します。
「データテーブルを結合したデータを扱いたい」「データにフィルタをかけてから扱いたい」といった少し手を加えてからデータを扱いたい場合はQueryアクセスモードでクエリを記述すると目的のデータが取得できます。
テーブル名を入力しNext
を押下すると、読み込むカラムの選択とデータのプレビューが行なえBiqQueryのデータテーブルからデータが取れることが確認できます。
まとめ
BigQueryとXplentyの接続方法をまとめました。特に難しい箇所もなく接続設定が行えると思います。 次回は具体的にPackageを作成してETLやELT処理を記事にまとめたいと思います。
最後まで読んで頂いてありがとうございました。